<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>IgH EtherCAT Master: datagram.c File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">IgH EtherCAT Master
   &#160;<span id="projectnumber">1.5.2</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
  initMenu('',false,false,'search.php','Search');
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('datagram_8c.html','');});
</script>
<div id="doc-content">
<div class="header">
  <div class="summary">
<a href="#func-members">Functions</a> &#124;
<a href="#var-members">Variables</a>  </div>
  <div class="headertitle">
<div class="title">datagram.c File Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>Methods of an EtherCAT datagram.  
<a href="#details">More...</a></p>

<p><a href="datagram_8c_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:af3dd26022b8780648d2f96ef558f0657"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="datagram_8c.html#af3dd26022b8780648d2f96ef558f0657">ec_datagram_init</a> (<a class="el" href="structec__datagram__t.html">ec_datagram_t</a> *datagram)</td></tr>
<tr class="memdesc:af3dd26022b8780648d2f96ef558f0657"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor.  <a href="#af3dd26022b8780648d2f96ef558f0657">More...</a><br /></td></tr>
<tr class="separator:af3dd26022b8780648d2f96ef558f0657"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac4bb8c0e9a5ac20a8d2c31f34a7fc4a9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="datagram_8c.html#ac4bb8c0e9a5ac20a8d2c31f34a7fc4a9">ec_datagram_clear</a> (<a class="el" href="structec__datagram__t.html">ec_datagram_t</a> *datagram)</td></tr>
<tr class="memdesc:ac4bb8c0e9a5ac20a8d2c31f34a7fc4a9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor.  <a href="#ac4bb8c0e9a5ac20a8d2c31f34a7fc4a9">More...</a><br /></td></tr>
<tr class="separator:ac4bb8c0e9a5ac20a8d2c31f34a7fc4a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aee6dc6380ce5925e75a07cc8d618ca8e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="datagram_8c.html#aee6dc6380ce5925e75a07cc8d618ca8e">ec_datagram_unqueue</a> (<a class="el" href="structec__datagram__t.html">ec_datagram_t</a> *datagram)</td></tr>
<tr class="memdesc:aee6dc6380ce5925e75a07cc8d618ca8e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Unqueue datagram.  <a href="#aee6dc6380ce5925e75a07cc8d618ca8e">More...</a><br /></td></tr>
<tr class="separator:aee6dc6380ce5925e75a07cc8d618ca8e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a407dc1f0c4247f84e4193b4368be8a8b"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="datagram_8c.html#a407dc1f0c4247f84e4193b4368be8a8b">ec_datagram_prealloc</a> (<a class="el" href="structec__datagram__t.html">ec_datagram_t</a> *datagram, size_t size)</td></tr>
<tr class="memdesc:a407dc1f0c4247f84e4193b4368be8a8b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Allocates internal payload memory.  <a href="#a407dc1f0c4247f84e4193b4368be8a8b">More...</a><br /></td></tr>
<tr class="separator:a407dc1f0c4247f84e4193b4368be8a8b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a56f873f563806b58344e8d5da6b0a53d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="datagram_8c.html#a56f873f563806b58344e8d5da6b0a53d">ec_datagram_zero</a> (<a class="el" href="structec__datagram__t.html">ec_datagram_t</a> *datagram)</td></tr>
<tr class="memdesc:a56f873f563806b58344e8d5da6b0a53d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Fills the datagram payload memory with zeros.  <a href="#a56f873f563806b58344e8d5da6b0a53d">More...</a><br /></td></tr>
<tr class="separator:a56f873f563806b58344e8d5da6b0a53d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aecab9ec4564cb288038b4adecbf27633"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="datagram_8c.html#aecab9ec4564cb288038b4adecbf27633">ec_datagram_aprd</a> (<a class="el" href="structec__datagram__t.html">ec_datagram_t</a> *datagram, uint16_t ring_position, uint16_t mem_address, size_t data_size)</td></tr>
<tr class="memdesc:aecab9ec4564cb288038b4adecbf27633"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes an EtherCAT APRD datagram.  <a href="#aecab9ec4564cb288038b4adecbf27633">More...</a><br /></td></tr>
<tr class="separator:aecab9ec4564cb288038b4adecbf27633"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5df5ebc6c2da74508f66a0ccc7313dcc"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="datagram_8c.html#a5df5ebc6c2da74508f66a0ccc7313dcc">ec_datagram_apwr</a> (<a class="el" href="structec__datagram__t.html">ec_datagram_t</a> *datagram, uint16_t ring_position, uint16_t mem_address, size_t data_size)</td></tr>
<tr class="memdesc:a5df5ebc6c2da74508f66a0ccc7313dcc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes an EtherCAT APWR datagram.  <a href="#a5df5ebc6c2da74508f66a0ccc7313dcc">More...</a><br /></td></tr>
<tr class="separator:a5df5ebc6c2da74508f66a0ccc7313dcc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a30163120153779990473e2a7196e4ca6"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="datagram_8c.html#a30163120153779990473e2a7196e4ca6">ec_datagram_aprw</a> (<a class="el" href="structec__datagram__t.html">ec_datagram_t</a> *datagram, uint16_t ring_position, uint16_t mem_address, size_t data_size)</td></tr>
<tr class="memdesc:a30163120153779990473e2a7196e4ca6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes an EtherCAT APRW datagram.  <a href="#a30163120153779990473e2a7196e4ca6">More...</a><br /></td></tr>
<tr class="separator:a30163120153779990473e2a7196e4ca6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9e1bd5b70511e58b0c342fa643ac31e6"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="datagram_8c.html#a9e1bd5b70511e58b0c342fa643ac31e6">ec_datagram_armw</a> (<a class="el" href="structec__datagram__t.html">ec_datagram_t</a> *datagram, uint16_t ring_position, uint16_t mem_address, size_t data_size)</td></tr>
<tr class="memdesc:a9e1bd5b70511e58b0c342fa643ac31e6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes an EtherCAT ARMW datagram.  <a href="#a9e1bd5b70511e58b0c342fa643ac31e6">More...</a><br /></td></tr>
<tr class="separator:a9e1bd5b70511e58b0c342fa643ac31e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae9a50bd9874a22d2f62a17973c042e9b"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="datagram_8c.html#ae9a50bd9874a22d2f62a17973c042e9b">ec_datagram_fprd</a> (<a class="el" href="structec__datagram__t.html">ec_datagram_t</a> *datagram, uint16_t configured_address, uint16_t mem_address, size_t data_size)</td></tr>
<tr class="memdesc:ae9a50bd9874a22d2f62a17973c042e9b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes an EtherCAT FPRD datagram.  <a href="#ae9a50bd9874a22d2f62a17973c042e9b">More...</a><br /></td></tr>
<tr class="separator:ae9a50bd9874a22d2f62a17973c042e9b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad34b69b7bf678ec548bd09d3ec4027d6"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="datagram_8c.html#ad34b69b7bf678ec548bd09d3ec4027d6">ec_datagram_fpwr</a> (<a class="el" href="structec__datagram__t.html">ec_datagram_t</a> *datagram, uint16_t configured_address, uint16_t mem_address, size_t data_size)</td></tr>
<tr class="memdesc:ad34b69b7bf678ec548bd09d3ec4027d6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes an EtherCAT FPWR datagram.  <a href="#ad34b69b7bf678ec548bd09d3ec4027d6">More...</a><br /></td></tr>
<tr class="separator:ad34b69b7bf678ec548bd09d3ec4027d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4a60fe5767b94b056fb884c5755ef89e"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="datagram_8c.html#a4a60fe5767b94b056fb884c5755ef89e">ec_datagram_fprw</a> (<a class="el" href="structec__datagram__t.html">ec_datagram_t</a> *datagram, uint16_t configured_address, uint16_t mem_address, size_t data_size)</td></tr>
<tr class="memdesc:a4a60fe5767b94b056fb884c5755ef89e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes an EtherCAT FPRW datagram.  <a href="#a4a60fe5767b94b056fb884c5755ef89e">More...</a><br /></td></tr>
<tr class="separator:a4a60fe5767b94b056fb884c5755ef89e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a25b7b36ce94f207b4543d8eacdb983d6"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="datagram_8c.html#a25b7b36ce94f207b4543d8eacdb983d6">ec_datagram_frmw</a> (<a class="el" href="structec__datagram__t.html">ec_datagram_t</a> *datagram, uint16_t configured_address, uint16_t mem_address, size_t data_size)</td></tr>
<tr class="memdesc:a25b7b36ce94f207b4543d8eacdb983d6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes an EtherCAT FRMW datagram.  <a href="#a25b7b36ce94f207b4543d8eacdb983d6">More...</a><br /></td></tr>
<tr class="separator:a25b7b36ce94f207b4543d8eacdb983d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a69bea0540d9be4f7aceeab708569c945"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="datagram_8c.html#a69bea0540d9be4f7aceeab708569c945">ec_datagram_brd</a> (<a class="el" href="structec__datagram__t.html">ec_datagram_t</a> *datagram, uint16_t mem_address, size_t data_size)</td></tr>
<tr class="memdesc:a69bea0540d9be4f7aceeab708569c945"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes an EtherCAT BRD datagram.  <a href="#a69bea0540d9be4f7aceeab708569c945">More...</a><br /></td></tr>
<tr class="separator:a69bea0540d9be4f7aceeab708569c945"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a75d99cd0fb3ed945361b4068c934636f"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="datagram_8c.html#a75d99cd0fb3ed945361b4068c934636f">ec_datagram_bwr</a> (<a class="el" href="structec__datagram__t.html">ec_datagram_t</a> *datagram, uint16_t mem_address, size_t data_size)</td></tr>
<tr class="memdesc:a75d99cd0fb3ed945361b4068c934636f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes an EtherCAT BWR datagram.  <a href="#a75d99cd0fb3ed945361b4068c934636f">More...</a><br /></td></tr>
<tr class="separator:a75d99cd0fb3ed945361b4068c934636f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1d57600f449a379a24c9c5a8bb7a2e41"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="datagram_8c.html#a1d57600f449a379a24c9c5a8bb7a2e41">ec_datagram_brw</a> (<a class="el" href="structec__datagram__t.html">ec_datagram_t</a> *datagram, uint16_t mem_address, size_t data_size)</td></tr>
<tr class="memdesc:a1d57600f449a379a24c9c5a8bb7a2e41"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes an EtherCAT BRW datagram.  <a href="#a1d57600f449a379a24c9c5a8bb7a2e41">More...</a><br /></td></tr>
<tr class="separator:a1d57600f449a379a24c9c5a8bb7a2e41"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab55ab76a42b6153c3bb98f513b4f9450"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="datagram_8c.html#ab55ab76a42b6153c3bb98f513b4f9450">ec_datagram_lrd</a> (<a class="el" href="structec__datagram__t.html">ec_datagram_t</a> *datagram, uint32_t offset, size_t data_size)</td></tr>
<tr class="memdesc:ab55ab76a42b6153c3bb98f513b4f9450"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes an EtherCAT LRD datagram.  <a href="#ab55ab76a42b6153c3bb98f513b4f9450">More...</a><br /></td></tr>
<tr class="separator:ab55ab76a42b6153c3bb98f513b4f9450"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aadace5dd3018b8cbcd8f3905a086ea9d"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="datagram_8c.html#aadace5dd3018b8cbcd8f3905a086ea9d">ec_datagram_lwr</a> (<a class="el" href="structec__datagram__t.html">ec_datagram_t</a> *datagram, uint32_t offset, size_t data_size)</td></tr>
<tr class="memdesc:aadace5dd3018b8cbcd8f3905a086ea9d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes an EtherCAT LWR datagram.  <a href="#aadace5dd3018b8cbcd8f3905a086ea9d">More...</a><br /></td></tr>
<tr class="separator:aadace5dd3018b8cbcd8f3905a086ea9d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae8724f060b07cdbed10a0e264d066094"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="datagram_8c.html#ae8724f060b07cdbed10a0e264d066094">ec_datagram_lrw</a> (<a class="el" href="structec__datagram__t.html">ec_datagram_t</a> *datagram, uint32_t offset, size_t data_size)</td></tr>
<tr class="memdesc:ae8724f060b07cdbed10a0e264d066094"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes an EtherCAT LRW datagram.  <a href="#ae8724f060b07cdbed10a0e264d066094">More...</a><br /></td></tr>
<tr class="separator:ae8724f060b07cdbed10a0e264d066094"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5469e87537d8c03970d1981984cf4b38"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="datagram_8c.html#a5469e87537d8c03970d1981984cf4b38">ec_datagram_lrd_ext</a> (<a class="el" href="structec__datagram__t.html">ec_datagram_t</a> *datagram, uint32_t offset, size_t data_size, uint8_t *external_memory)</td></tr>
<tr class="memdesc:a5469e87537d8c03970d1981984cf4b38"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes an EtherCAT LRD datagram with external memory.  <a href="#a5469e87537d8c03970d1981984cf4b38">More...</a><br /></td></tr>
<tr class="separator:a5469e87537d8c03970d1981984cf4b38"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5ccd1a04e0901c0bc716b4d7f3dd676d"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="datagram_8c.html#a5ccd1a04e0901c0bc716b4d7f3dd676d">ec_datagram_lwr_ext</a> (<a class="el" href="structec__datagram__t.html">ec_datagram_t</a> *datagram, uint32_t offset, size_t data_size, uint8_t *external_memory)</td></tr>
<tr class="memdesc:a5ccd1a04e0901c0bc716b4d7f3dd676d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes an EtherCAT LWR datagram with external memory.  <a href="#a5ccd1a04e0901c0bc716b4d7f3dd676d">More...</a><br /></td></tr>
<tr class="separator:a5ccd1a04e0901c0bc716b4d7f3dd676d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a28e3b0846186d09fbb8c4166c4a6eaba"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="datagram_8c.html#a28e3b0846186d09fbb8c4166c4a6eaba">ec_datagram_lrw_ext</a> (<a class="el" href="structec__datagram__t.html">ec_datagram_t</a> *datagram, uint32_t offset, size_t data_size, uint8_t *external_memory)</td></tr>
<tr class="memdesc:a28e3b0846186d09fbb8c4166c4a6eaba"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes an EtherCAT LRW datagram with external memory.  <a href="#a28e3b0846186d09fbb8c4166c4a6eaba">More...</a><br /></td></tr>
<tr class="separator:a28e3b0846186d09fbb8c4166c4a6eaba"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a84b0c2679038e17cfd5af69df9a68001"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="datagram_8c.html#a84b0c2679038e17cfd5af69df9a68001">ec_datagram_print_state</a> (const <a class="el" href="structec__datagram__t.html">ec_datagram_t</a> *datagram)</td></tr>
<tr class="memdesc:a84b0c2679038e17cfd5af69df9a68001"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prints the state of a datagram.  <a href="#a84b0c2679038e17cfd5af69df9a68001">More...</a><br /></td></tr>
<tr class="separator:a84b0c2679038e17cfd5af69df9a68001"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1f7361d097a385f3ed98ce98ba352a1c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="datagram_8c.html#a1f7361d097a385f3ed98ce98ba352a1c">ec_datagram_print_wc_error</a> (const <a class="el" href="structec__datagram__t.html">ec_datagram_t</a> *datagram)</td></tr>
<tr class="memdesc:a1f7361d097a385f3ed98ce98ba352a1c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Evaluates the working counter of a single-cast datagram.  <a href="#a1f7361d097a385f3ed98ce98ba352a1c">More...</a><br /></td></tr>
<tr class="separator:a1f7361d097a385f3ed98ce98ba352a1c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a89bbb5e33d0b78760734a3984e4e394f"><td class="memItemLeft" align="right" valign="top"><a id="a89bbb5e33d0b78760734a3984e4e394f"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="datagram_8c.html#a89bbb5e33d0b78760734a3984e4e394f">ec_datagram_output_stats</a> (<a class="el" href="structec__datagram__t.html">ec_datagram_t</a> *datagram)</td></tr>
<tr class="memdesc:a89bbb5e33d0b78760734a3984e4e394f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Outputs datagram statistics at most every second. <br /></td></tr>
<tr class="separator:a89bbb5e33d0b78760734a3984e4e394f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a557d736d87dd0e69dd29ee75de817dc8"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="datagram_8c.html#a557d736d87dd0e69dd29ee75de817dc8">ec_datagram_type_string</a> (const <a class="el" href="structec__datagram__t.html">ec_datagram_t</a> *datagram)</td></tr>
<tr class="memdesc:a557d736d87dd0e69dd29ee75de817dc8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a string describing the datagram type.  <a href="#a557d736d87dd0e69dd29ee75de817dc8">More...</a><br /></td></tr>
<tr class="separator:a557d736d87dd0e69dd29ee75de817dc8"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
Variables</h2></td></tr>
<tr class="memitem:a7e261a85cb515f83efd0be78ca331414"><td class="memItemLeft" align="right" valign="top">static const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="datagram_8c.html#a7e261a85cb515f83efd0be78ca331414">type_strings</a> []</td></tr>
<tr class="memdesc:a7e261a85cb515f83efd0be78ca331414"><td class="mdescLeft">&#160;</td><td class="mdescRight">Array of datagram type strings used in <a class="el" href="datagram_8c.html#a557d736d87dd0e69dd29ee75de817dc8" title="Returns a string describing the datagram type. ">ec_datagram_type_string()</a>.  <a href="#a7e261a85cb515f83efd0be78ca331414">More...</a><br /></td></tr>
<tr class="separator:a7e261a85cb515f83efd0be78ca331414"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Methods of an EtherCAT datagram. </p>

<p class="definition">Definition in file <a class="el" href="datagram_8c_source.html">datagram.c</a>.</p>
</div><h2 class="groupheader">Function Documentation</h2>
<a id="af3dd26022b8780648d2f96ef558f0657"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af3dd26022b8780648d2f96ef558f0657">&#9670;&nbsp;</a></span>ec_datagram_init()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ec_datagram_init </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structec__datagram__t.html">ec_datagram_t</a> *&#160;</td>
          <td class="paramname"><em>datagram</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Constructor. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">datagram</td><td>EtherCAT datagram. </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="datagram_8c_source.html#l00088">88</a> of file <a class="el" href="datagram_8c_source.html">datagram.c</a>.</p>

</div>
</div>
<a id="ac4bb8c0e9a5ac20a8d2c31f34a7fc4a9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac4bb8c0e9a5ac20a8d2c31f34a7fc4a9">&#9670;&nbsp;</a></span>ec_datagram_clear()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ec_datagram_clear </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structec__datagram__t.html">ec_datagram_t</a> *&#160;</td>
          <td class="paramname"><em>datagram</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Destructor. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">datagram</td><td>EtherCAT datagram. </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="datagram_8c_source.html#l00118">118</a> of file <a class="el" href="datagram_8c_source.html">datagram.c</a>.</p>

</div>
</div>
<a id="aee6dc6380ce5925e75a07cc8d618ca8e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aee6dc6380ce5925e75a07cc8d618ca8e">&#9670;&nbsp;</a></span>ec_datagram_unqueue()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ec_datagram_unqueue </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structec__datagram__t.html">ec_datagram_t</a> *&#160;</td>
          <td class="paramname"><em>datagram</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Unqueue datagram. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">datagram</td><td>EtherCAT datagram. </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="datagram_8c_source.html#l00132">132</a> of file <a class="el" href="datagram_8c_source.html">datagram.c</a>.</p>

</div>
</div>
<a id="a407dc1f0c4247f84e4193b4368be8a8b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a407dc1f0c4247f84e4193b4368be8a8b">&#9670;&nbsp;</a></span>ec_datagram_prealloc()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int ec_datagram_prealloc </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structec__datagram__t.html">ec_datagram_t</a> *&#160;</td>
          <td class="paramname"><em>datagram</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>size</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Allocates internal payload memory. </p>
<p>If the allocated memory is already larger than requested, nothing ist done.</p>
<dl class="section attention"><dt>Attention</dt><dd>If external payload memory has been provided, no range checking is done!</dd></dl>
<dl class="section return"><dt>Returns</dt><dd>0 in case of success, otherwise <em>-ENOMEM</em>. </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">datagram</td><td>EtherCAT datagram. </td></tr>
    <tr><td class="paramname">size</td><td>New payload size in bytes. </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="datagram_8c_source.html#l00150">150</a> of file <a class="el" href="datagram_8c_source.html">datagram.c</a>.</p>

</div>
</div>
<a id="a56f873f563806b58344e8d5da6b0a53d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a56f873f563806b58344e8d5da6b0a53d">&#9670;&nbsp;</a></span>ec_datagram_zero()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ec_datagram_zero </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structec__datagram__t.html">ec_datagram_t</a> *&#160;</td>
          <td class="paramname"><em>datagram</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Fills the datagram payload memory with zeros. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">datagram</td><td>EtherCAT datagram. </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="datagram_8c_source.html#l00178">178</a> of file <a class="el" href="datagram_8c_source.html">datagram.c</a>.</p>

</div>
</div>
<a id="aecab9ec4564cb288038b4adecbf27633"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aecab9ec4564cb288038b4adecbf27633">&#9670;&nbsp;</a></span>ec_datagram_aprd()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int ec_datagram_aprd </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structec__datagram__t.html">ec_datagram_t</a> *&#160;</td>
          <td class="paramname"><em>datagram</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint16_t&#160;</td>
          <td class="paramname"><em>ring_position</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint16_t&#160;</td>
          <td class="paramname"><em>mem_address</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>data_size</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Initializes an EtherCAT APRD datagram. </p>
<dl class="section return"><dt>Returns</dt><dd>Return value of <a class="el" href="datagram_8c.html#a407dc1f0c4247f84e4193b4368be8a8b" title="Allocates internal payload memory. ">ec_datagram_prealloc()</a>. </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">datagram</td><td>EtherCAT datagram. </td></tr>
    <tr><td class="paramname">ring_position</td><td>Auto-increment address. </td></tr>
    <tr><td class="paramname">mem_address</td><td>Physical memory address. </td></tr>
    <tr><td class="paramname">data_size</td><td>Number of bytes to read. </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="datagram_8c_source.html#l00189">189</a> of file <a class="el" href="datagram_8c_source.html">datagram.c</a>.</p>

</div>
</div>
<a id="a5df5ebc6c2da74508f66a0ccc7313dcc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5df5ebc6c2da74508f66a0ccc7313dcc">&#9670;&nbsp;</a></span>ec_datagram_apwr()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int ec_datagram_apwr </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structec__datagram__t.html">ec_datagram_t</a> *&#160;</td>
          <td class="paramname"><em>datagram</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint16_t&#160;</td>
          <td class="paramname"><em>ring_position</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint16_t&#160;</td>
          <td class="paramname"><em>mem_address</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>data_size</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Initializes an EtherCAT APWR datagram. </p>
<dl class="section return"><dt>Returns</dt><dd>Return value of <a class="el" href="datagram_8c.html#a407dc1f0c4247f84e4193b4368be8a8b" title="Allocates internal payload memory. ">ec_datagram_prealloc()</a>. </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">datagram</td><td>EtherCAT datagram. </td></tr>
    <tr><td class="paramname">ring_position</td><td>Auto-increment address. </td></tr>
    <tr><td class="paramname">mem_address</td><td>Physical memory address. </td></tr>
    <tr><td class="paramname">data_size</td><td>Number of bytes to write. </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="datagram_8c_source.html#l00210">210</a> of file <a class="el" href="datagram_8c_source.html">datagram.c</a>.</p>

</div>
</div>
<a id="a30163120153779990473e2a7196e4ca6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a30163120153779990473e2a7196e4ca6">&#9670;&nbsp;</a></span>ec_datagram_aprw()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int ec_datagram_aprw </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structec__datagram__t.html">ec_datagram_t</a> *&#160;</td>
          <td class="paramname"><em>datagram</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint16_t&#160;</td>
          <td class="paramname"><em>ring_position</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint16_t&#160;</td>
          <td class="paramname"><em>mem_address</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>data_size</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Initializes an EtherCAT APRW datagram. </p>
<dl class="section return"><dt>Returns</dt><dd>Return value of <a class="el" href="datagram_8c.html#a407dc1f0c4247f84e4193b4368be8a8b" title="Allocates internal payload memory. ">ec_datagram_prealloc()</a>. </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">datagram</td><td>EtherCAT datagram. </td></tr>
    <tr><td class="paramname">ring_position</td><td>Auto-increment address. </td></tr>
    <tr><td class="paramname">mem_address</td><td>Physical memory address. </td></tr>
    <tr><td class="paramname">data_size</td><td>Number of bytes to write. </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="datagram_8c_source.html#l00231">231</a> of file <a class="el" href="datagram_8c_source.html">datagram.c</a>.</p>

</div>
</div>
<a id="a9e1bd5b70511e58b0c342fa643ac31e6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9e1bd5b70511e58b0c342fa643ac31e6">&#9670;&nbsp;</a></span>ec_datagram_armw()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int ec_datagram_armw </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structec__datagram__t.html">ec_datagram_t</a> *&#160;</td>
          <td class="paramname"><em>datagram</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint16_t&#160;</td>
          <td class="paramname"><em>ring_position</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint16_t&#160;</td>
          <td class="paramname"><em>mem_address</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>data_size</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Initializes an EtherCAT ARMW datagram. </p>
<dl class="section return"><dt>Returns</dt><dd>Return value of <a class="el" href="datagram_8c.html#a407dc1f0c4247f84e4193b4368be8a8b" title="Allocates internal payload memory. ">ec_datagram_prealloc()</a>. </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">datagram</td><td>EtherCAT datagram. </td></tr>
    <tr><td class="paramname">ring_position</td><td>Auto-increment address. </td></tr>
    <tr><td class="paramname">mem_address</td><td>Physical memory address. </td></tr>
    <tr><td class="paramname">data_size</td><td>Number of bytes to read. </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="datagram_8c_source.html#l00252">252</a> of file <a class="el" href="datagram_8c_source.html">datagram.c</a>.</p>

</div>
</div>
<a id="ae9a50bd9874a22d2f62a17973c042e9b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae9a50bd9874a22d2f62a17973c042e9b">&#9670;&nbsp;</a></span>ec_datagram_fprd()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int ec_datagram_fprd </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structec__datagram__t.html">ec_datagram_t</a> *&#160;</td>
          <td class="paramname"><em>datagram</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint16_t&#160;</td>
          <td class="paramname"><em>configured_address</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint16_t&#160;</td>
          <td class="paramname"><em>mem_address</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>data_size</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Initializes an EtherCAT FPRD datagram. </p>
<dl class="section return"><dt>Returns</dt><dd>Return value of <a class="el" href="datagram_8c.html#a407dc1f0c4247f84e4193b4368be8a8b" title="Allocates internal payload memory. ">ec_datagram_prealloc()</a>. </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">datagram</td><td>EtherCAT datagram. </td></tr>
    <tr><td class="paramname">configured_address</td><td>Configured station address. </td></tr>
    <tr><td class="paramname">mem_address</td><td>Physical memory address. </td></tr>
    <tr><td class="paramname">data_size</td><td>Number of bytes to read. </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="datagram_8c_source.html#l00273">273</a> of file <a class="el" href="datagram_8c_source.html">datagram.c</a>.</p>

</div>
</div>
<a id="ad34b69b7bf678ec548bd09d3ec4027d6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad34b69b7bf678ec548bd09d3ec4027d6">&#9670;&nbsp;</a></span>ec_datagram_fpwr()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int ec_datagram_fpwr </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structec__datagram__t.html">ec_datagram_t</a> *&#160;</td>
          <td class="paramname"><em>datagram</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint16_t&#160;</td>
          <td class="paramname"><em>configured_address</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint16_t&#160;</td>
          <td class="paramname"><em>mem_address</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>data_size</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Initializes an EtherCAT FPWR datagram. </p>
<dl class="section return"><dt>Returns</dt><dd>Return value of <a class="el" href="datagram_8c.html#a407dc1f0c4247f84e4193b4368be8a8b" title="Allocates internal payload memory. ">ec_datagram_prealloc()</a>. </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">datagram</td><td>EtherCAT datagram. </td></tr>
    <tr><td class="paramname">configured_address</td><td>Configured station address. </td></tr>
    <tr><td class="paramname">mem_address</td><td>Physical memory address. </td></tr>
    <tr><td class="paramname">data_size</td><td>Number of bytes to write. </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="datagram_8c_source.html#l00298">298</a> of file <a class="el" href="datagram_8c_source.html">datagram.c</a>.</p>

</div>
</div>
<a id="a4a60fe5767b94b056fb884c5755ef89e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4a60fe5767b94b056fb884c5755ef89e">&#9670;&nbsp;</a></span>ec_datagram_fprw()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int ec_datagram_fprw </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structec__datagram__t.html">ec_datagram_t</a> *&#160;</td>
          <td class="paramname"><em>datagram</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint16_t&#160;</td>
          <td class="paramname"><em>configured_address</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint16_t&#160;</td>
          <td class="paramname"><em>mem_address</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>data_size</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Initializes an EtherCAT FPRW datagram. </p>
<dl class="section return"><dt>Returns</dt><dd>Return value of <a class="el" href="datagram_8c.html#a407dc1f0c4247f84e4193b4368be8a8b" title="Allocates internal payload memory. ">ec_datagram_prealloc()</a>. </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">datagram</td><td>EtherCAT datagram. </td></tr>
    <tr><td class="paramname">configured_address</td><td>Configured station address. </td></tr>
    <tr><td class="paramname">mem_address</td><td>Physical memory address. </td></tr>
    <tr><td class="paramname">data_size</td><td>Number of bytes to write. </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="datagram_8c_source.html#l00323">323</a> of file <a class="el" href="datagram_8c_source.html">datagram.c</a>.</p>

</div>
</div>
<a id="a25b7b36ce94f207b4543d8eacdb983d6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a25b7b36ce94f207b4543d8eacdb983d6">&#9670;&nbsp;</a></span>ec_datagram_frmw()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int ec_datagram_frmw </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structec__datagram__t.html">ec_datagram_t</a> *&#160;</td>
          <td class="paramname"><em>datagram</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint16_t&#160;</td>
          <td class="paramname"><em>configured_address</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint16_t&#160;</td>
          <td class="paramname"><em>mem_address</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>data_size</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Initializes an EtherCAT FRMW datagram. </p>
<dl class="section return"><dt>Returns</dt><dd>Return value of <a class="el" href="datagram_8c.html#a407dc1f0c4247f84e4193b4368be8a8b" title="Allocates internal payload memory. ">ec_datagram_prealloc()</a>. </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">datagram</td><td>EtherCAT datagram. </td></tr>
    <tr><td class="paramname">configured_address</td><td>Configured station address. </td></tr>
    <tr><td class="paramname">mem_address</td><td>Physical memory address. </td></tr>
    <tr><td class="paramname">data_size</td><td>Number of bytes to write. </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="datagram_8c_source.html#l00348">348</a> of file <a class="el" href="datagram_8c_source.html">datagram.c</a>.</p>

</div>
</div>
<a id="a69bea0540d9be4f7aceeab708569c945"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a69bea0540d9be4f7aceeab708569c945">&#9670;&nbsp;</a></span>ec_datagram_brd()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int ec_datagram_brd </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structec__datagram__t.html">ec_datagram_t</a> *&#160;</td>
          <td class="paramname"><em>datagram</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint16_t&#160;</td>
          <td class="paramname"><em>mem_address</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>data_size</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Initializes an EtherCAT BRD datagram. </p>
<dl class="section return"><dt>Returns</dt><dd>Return value of <a class="el" href="datagram_8c.html#a407dc1f0c4247f84e4193b4368be8a8b" title="Allocates internal payload memory. ">ec_datagram_prealloc()</a>. </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">datagram</td><td>EtherCAT datagram. </td></tr>
    <tr><td class="paramname">mem_address</td><td>Physical memory address. </td></tr>
    <tr><td class="paramname">data_size</td><td>Number of bytes to read. </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="datagram_8c_source.html#l00373">373</a> of file <a class="el" href="datagram_8c_source.html">datagram.c</a>.</p>

</div>
</div>
<a id="a75d99cd0fb3ed945361b4068c934636f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a75d99cd0fb3ed945361b4068c934636f">&#9670;&nbsp;</a></span>ec_datagram_bwr()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int ec_datagram_bwr </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structec__datagram__t.html">ec_datagram_t</a> *&#160;</td>
          <td class="paramname"><em>datagram</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint16_t&#160;</td>
          <td class="paramname"><em>mem_address</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>data_size</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Initializes an EtherCAT BWR datagram. </p>
<dl class="section return"><dt>Returns</dt><dd>Return value of <a class="el" href="datagram_8c.html#a407dc1f0c4247f84e4193b4368be8a8b" title="Allocates internal payload memory. ">ec_datagram_prealloc()</a>. </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">datagram</td><td>EtherCAT datagram. </td></tr>
    <tr><td class="paramname">mem_address</td><td>Physical memory address. </td></tr>
    <tr><td class="paramname">data_size</td><td>Number of bytes to write. </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="datagram_8c_source.html#l00393">393</a> of file <a class="el" href="datagram_8c_source.html">datagram.c</a>.</p>

</div>
</div>
<a id="a1d57600f449a379a24c9c5a8bb7a2e41"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1d57600f449a379a24c9c5a8bb7a2e41">&#9670;&nbsp;</a></span>ec_datagram_brw()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int ec_datagram_brw </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structec__datagram__t.html">ec_datagram_t</a> *&#160;</td>
          <td class="paramname"><em>datagram</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint16_t&#160;</td>
          <td class="paramname"><em>mem_address</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>data_size</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Initializes an EtherCAT BRW datagram. </p>
<dl class="section return"><dt>Returns</dt><dd>Return value of <a class="el" href="datagram_8c.html#a407dc1f0c4247f84e4193b4368be8a8b" title="Allocates internal payload memory. ">ec_datagram_prealloc()</a>. </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">datagram</td><td>EtherCAT datagram. </td></tr>
    <tr><td class="paramname">mem_address</td><td>Physical memory address. </td></tr>
    <tr><td class="paramname">data_size</td><td>Number of bytes to write. </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="datagram_8c_source.html#l00413">413</a> of file <a class="el" href="datagram_8c_source.html">datagram.c</a>.</p>

</div>
</div>
<a id="ab55ab76a42b6153c3bb98f513b4f9450"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab55ab76a42b6153c3bb98f513b4f9450">&#9670;&nbsp;</a></span>ec_datagram_lrd()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int ec_datagram_lrd </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structec__datagram__t.html">ec_datagram_t</a> *&#160;</td>
          <td class="paramname"><em>datagram</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>offset</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>data_size</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Initializes an EtherCAT LRD datagram. </p>
<dl class="section return"><dt>Returns</dt><dd>Return value of <a class="el" href="datagram_8c.html#a407dc1f0c4247f84e4193b4368be8a8b" title="Allocates internal payload memory. ">ec_datagram_prealloc()</a>. </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">datagram</td><td>EtherCAT datagram. </td></tr>
    <tr><td class="paramname">offset</td><td>Logical address. </td></tr>
    <tr><td class="paramname">data_size</td><td>Number of bytes to read/write. </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="datagram_8c_source.html#l00433">433</a> of file <a class="el" href="datagram_8c_source.html">datagram.c</a>.</p>

</div>
</div>
<a id="aadace5dd3018b8cbcd8f3905a086ea9d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aadace5dd3018b8cbcd8f3905a086ea9d">&#9670;&nbsp;</a></span>ec_datagram_lwr()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int ec_datagram_lwr </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structec__datagram__t.html">ec_datagram_t</a> *&#160;</td>
          <td class="paramname"><em>datagram</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>offset</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>data_size</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Initializes an EtherCAT LWR datagram. </p>
<dl class="section return"><dt>Returns</dt><dd>Return value of <a class="el" href="datagram_8c.html#a407dc1f0c4247f84e4193b4368be8a8b" title="Allocates internal payload memory. ">ec_datagram_prealloc()</a>. </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">datagram</td><td>EtherCAT datagram. </td></tr>
    <tr><td class="paramname">offset</td><td>Logical address. </td></tr>
    <tr><td class="paramname">data_size</td><td>Number of bytes to read/write. </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="datagram_8c_source.html#l00452">452</a> of file <a class="el" href="datagram_8c_source.html">datagram.c</a>.</p>

</div>
</div>
<a id="ae8724f060b07cdbed10a0e264d066094"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae8724f060b07cdbed10a0e264d066094">&#9670;&nbsp;</a></span>ec_datagram_lrw()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int ec_datagram_lrw </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structec__datagram__t.html">ec_datagram_t</a> *&#160;</td>
          <td class="paramname"><em>datagram</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>offset</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>data_size</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Initializes an EtherCAT LRW datagram. </p>
<dl class="section return"><dt>Returns</dt><dd>Return value of <a class="el" href="datagram_8c.html#a407dc1f0c4247f84e4193b4368be8a8b" title="Allocates internal payload memory. ">ec_datagram_prealloc()</a>. </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">datagram</td><td>EtherCAT datagram. </td></tr>
    <tr><td class="paramname">offset</td><td>Logical address. </td></tr>
    <tr><td class="paramname">data_size</td><td>Number of bytes to read/write. </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="datagram_8c_source.html#l00471">471</a> of file <a class="el" href="datagram_8c_source.html">datagram.c</a>.</p>

</div>
</div>
<a id="a5469e87537d8c03970d1981984cf4b38"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5469e87537d8c03970d1981984cf4b38">&#9670;&nbsp;</a></span>ec_datagram_lrd_ext()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int ec_datagram_lrd_ext </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structec__datagram__t.html">ec_datagram_t</a> *&#160;</td>
          <td class="paramname"><em>datagram</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>offset</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>data_size</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t *&#160;</td>
          <td class="paramname"><em>external_memory</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Initializes an EtherCAT LRD datagram with external memory. </p>
<dl class="section attention"><dt>Attention</dt><dd>It is assumed, that the external memory is at least <em>data_size</em> bytes large.</dd></dl>
<dl class="section return"><dt>Returns</dt><dd>Return value of <a class="el" href="datagram_8c.html#a407dc1f0c4247f84e4193b4368be8a8b" title="Allocates internal payload memory. ">ec_datagram_prealloc()</a>. </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">datagram</td><td>EtherCAT datagram. </td></tr>
    <tr><td class="paramname">offset</td><td>Logical address. </td></tr>
    <tr><td class="paramname">data_size</td><td>Number of bytes to read/write. </td></tr>
    <tr><td class="paramname">external_memory</td><td>Pointer to the memory to use. </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="datagram_8c_source.html#l00493">493</a> of file <a class="el" href="datagram_8c_source.html">datagram.c</a>.</p>

</div>
</div>
<a id="a5ccd1a04e0901c0bc716b4d7f3dd676d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5ccd1a04e0901c0bc716b4d7f3dd676d">&#9670;&nbsp;</a></span>ec_datagram_lwr_ext()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int ec_datagram_lwr_ext </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structec__datagram__t.html">ec_datagram_t</a> *&#160;</td>
          <td class="paramname"><em>datagram</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>offset</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>data_size</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t *&#160;</td>
          <td class="paramname"><em>external_memory</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Initializes an EtherCAT LWR datagram with external memory. </p>
<dl class="section attention"><dt>Attention</dt><dd>It is assumed, that the external memory is at least <em>data_size</em> bytes large.</dd></dl>
<dl class="section return"><dt>Returns</dt><dd>Return value of <a class="el" href="datagram_8c.html#a407dc1f0c4247f84e4193b4368be8a8b" title="Allocates internal payload memory. ">ec_datagram_prealloc()</a>. </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">datagram</td><td>EtherCAT datagram. </td></tr>
    <tr><td class="paramname">offset</td><td>Logical address. </td></tr>
    <tr><td class="paramname">data_size</td><td>Number of bytes to read/write. </td></tr>
    <tr><td class="paramname">external_memory</td><td>Pointer to the memory to use. </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="datagram_8c_source.html#l00518">518</a> of file <a class="el" href="datagram_8c_source.html">datagram.c</a>.</p>

</div>
</div>
<a id="a28e3b0846186d09fbb8c4166c4a6eaba"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a28e3b0846186d09fbb8c4166c4a6eaba">&#9670;&nbsp;</a></span>ec_datagram_lrw_ext()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int ec_datagram_lrw_ext </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structec__datagram__t.html">ec_datagram_t</a> *&#160;</td>
          <td class="paramname"><em>datagram</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>offset</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>data_size</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t *&#160;</td>
          <td class="paramname"><em>external_memory</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Initializes an EtherCAT LRW datagram with external memory. </p>
<dl class="section attention"><dt>Attention</dt><dd>It is assumed, that the external memory is at least <em>data_size</em> bytes large.</dd></dl>
<dl class="section return"><dt>Returns</dt><dd>Return value of <a class="el" href="datagram_8c.html#a407dc1f0c4247f84e4193b4368be8a8b" title="Allocates internal payload memory. ">ec_datagram_prealloc()</a>. </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">datagram</td><td>EtherCAT datagram. </td></tr>
    <tr><td class="paramname">offset</td><td>Logical address. </td></tr>
    <tr><td class="paramname">data_size</td><td>Number of bytes to read/write. </td></tr>
    <tr><td class="paramname">external_memory</td><td>Pointer to the memory to use. </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="datagram_8c_source.html#l00543">543</a> of file <a class="el" href="datagram_8c_source.html">datagram.c</a>.</p>

</div>
</div>
<a id="a84b0c2679038e17cfd5af69df9a68001"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a84b0c2679038e17cfd5af69df9a68001">&#9670;&nbsp;</a></span>ec_datagram_print_state()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ec_datagram_print_state </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structec__datagram__t.html">ec_datagram_t</a> *&#160;</td>
          <td class="paramname"><em>datagram</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Prints the state of a datagram. </p>
<p>Outputs a text message. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">datagram</td><td>EtherCAT datagram </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="datagram_8c_source.html#l00565">565</a> of file <a class="el" href="datagram_8c_source.html">datagram.c</a>.</p>

</div>
</div>
<a id="a1f7361d097a385f3ed98ce98ba352a1c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1f7361d097a385f3ed98ce98ba352a1c">&#9670;&nbsp;</a></span>ec_datagram_print_wc_error()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ec_datagram_print_wc_error </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structec__datagram__t.html">ec_datagram_t</a> *&#160;</td>
          <td class="paramname"><em>datagram</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Evaluates the working counter of a single-cast datagram. </p>
<p>Outputs an error message. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">datagram</td><td>EtherCAT datagram </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="datagram_8c_source.html#l00602">602</a> of file <a class="el" href="datagram_8c_source.html">datagram.c</a>.</p>

</div>
</div>
<a id="a557d736d87dd0e69dd29ee75de817dc8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a557d736d87dd0e69dd29ee75de817dc8">&#9670;&nbsp;</a></span>ec_datagram_type_string()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const char* ec_datagram_type_string </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structec__datagram__t.html">ec_datagram_t</a> *&#160;</td>
          <td class="paramname"><em>datagram</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Returns a string describing the datagram type. </p>
<dl class="section return"><dt>Returns</dt><dd>Pointer on a static memory containing the requested string. </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">datagram</td><td>EtherCAT datagram. </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="datagram_8c_source.html#l00642">642</a> of file <a class="el" href="datagram_8c_source.html">datagram.c</a>.</p>

</div>
</div>
<h2 class="groupheader">Variable Documentation</h2>
<a id="a7e261a85cb515f83efd0be78ca331414"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7e261a85cb515f83efd0be78ca331414">&#9670;&nbsp;</a></span>type_strings</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">const char* type_strings[]</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<b>Initial value:</b><div class="fragment"><div class="line">= {</div><div class="line">    <span class="stringliteral">&quot;?&quot;</span>,</div><div class="line">    <span class="stringliteral">&quot;APRD&quot;</span>,</div><div class="line">    <span class="stringliteral">&quot;APWR&quot;</span>,</div><div class="line">    <span class="stringliteral">&quot;APRW&quot;</span>,</div><div class="line">    <span class="stringliteral">&quot;FPRD&quot;</span>,</div><div class="line">    <span class="stringliteral">&quot;FPWR&quot;</span>,</div><div class="line">    <span class="stringliteral">&quot;FPRW&quot;</span>,</div><div class="line">    <span class="stringliteral">&quot;BRD&quot;</span>,</div><div class="line">    <span class="stringliteral">&quot;BWR&quot;</span>,</div><div class="line">    <span class="stringliteral">&quot;BRW&quot;</span>,</div><div class="line">    <span class="stringliteral">&quot;LRD&quot;</span>,</div><div class="line">    <span class="stringliteral">&quot;LWR&quot;</span>,</div><div class="line">    <span class="stringliteral">&quot;LRW&quot;</span>,</div><div class="line">    <span class="stringliteral">&quot;ARMW&quot;</span>,</div><div class="line">    <span class="stringliteral">&quot;FRMW&quot;</span></div><div class="line">}</div></div><!-- fragment -->
<p>Array of datagram type strings used in <a class="el" href="datagram_8c.html#a557d736d87dd0e69dd29ee75de817dc8" title="Returns a string describing the datagram type. ">ec_datagram_type_string()</a>. </p>
<dl class="section attention"><dt>Attention</dt><dd>This is indexed by ec_datagram_type_t. </dd></dl>

<p class="definition">Definition at line <a class="el" href="datagram_8c_source.html#l00066">66</a> of file <a class="el" href="datagram_8c_source.html">datagram.c</a>.</p>

</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="dir_c1346cf4828efdd0d2baf0d391d01b77.html">master</a></li><li class="navelem"><a class="el" href="datagram_8c.html">datagram.c</a></li>
    <li class="footer">Generated by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
  </ul>
</div>
</body>
</html>
